#pragma once


#include <ddblk/apds.h>

/* 不应该做兼容，必须调整好输入 */
/* 它们都需要的东西填写好 */
/* 之前的模块也可以把依赖后置，让后面的模块自己填入定义， 这样会不会过于复杂? */
/* 处理好tls和永久对象分配, proc_init和thread_init */

/* locknode的分配问题 */

/* 定义一个小的thread cache分配器? */

/* 需要实现apdsnode_alloc */
// SAI void *apdsnode_alloc(size_t size){ if (size <= objsize) return (void *)objname##_cachealloc(); return NULL; }\
// SAI void apdsnode_free(void *ptr, size_t size){ objname##_cachefree((spobj_t*)ptr); }


#define MAPDS_CEFF(name)	apds_create##name, apds_destroy##name, apds_sync##name, apds_sync_fast##name, apds_await##name, apds_future##name
#define MAPDS_CEFF_ALL		MAPDS_CEFF()
